// -*- coding: utf-8 -*-
// @Time : 2024/9/27 下午9:31
// @Author : 423A35C7
// @Site : 
// @File : vite.config.js.js
// @Software: WebStorm

import { fileURLToPath, URL } from 'node:url'
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path';
import AutoImport from 'unplugin-auto-import/vite' // 自动导入
import Components from 'unplugin-vue-components/vite' // 组件注册
import { ElementPlusResolver, AntDesignVueResolver } from 'unplugin-vue-components/resolvers' // elementPlus
import Icons from 'unplugin-icons/vite' // icon相关
import IconsResolver from 'unplugin-icons/resolver'
// import vueJsx from "@vitejs/plugin-vue-jsx"; // icon相关

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
      vue(),
      // vueJsx(),
      AutoImport({
        imports: ['vue', 'vue-router'],
        // dts: fileURLToPath(new URL('./types/auto-imports.d.ts', import.meta.url)),
        resolvers: [
          ElementPlusResolver(),
          AntDesignVueResolver(),
          // 自动导入图标组件
          IconsResolver({
            prefix: 'Icon'
          })
        ]
      }),
      Components({
        dirs: ['src/components'],
        // dts: fileURLToPath(new URL('./types/components.d.ts', import.meta.url)),
        resolvers: [
          ElementPlusResolver(),
          IconsResolver({
            enabledCollections: ['ep'] // 重点
          })
        ]
      }),
      Icons({
        autoInstall: true
      })
  ],
  resolve: {
    alias: {
      // '@': '/src', // 将 @ 指向 /src 路径
      '@': path.resolve(__dirname, 'src'), // 使用 path 模块来解析绝对路径
      // 可以添加更多别名
    },
  },
})
